home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / nss / sslerr.h < prev    next >
C/C++ Source or Header  |  2006-04-20  |  9KB  |  194 lines

  1. /*
  2.  * Enumeration of all SSL-specific error codes.
  3.  *
  4.  * ***** BEGIN LICENSE BLOCK *****
  5.  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
  6.  *
  7.  * The contents of this file are subject to the Mozilla Public License Version
  8.  * 1.1 (the "License"); you may not use this file except in compliance with
  9.  * the License. You may obtain a copy of the License at
  10.  * http://www.mozilla.org/MPL/
  11.  *
  12.  * Software distributed under the License is distributed on an "AS IS" basis,
  13.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  14.  * for the specific language governing rights and limitations under the
  15.  * License.
  16.  *
  17.  * The Original Code is the Netscape security libraries.
  18.  *
  19.  * The Initial Developer of the Original Code is
  20.  * Netscape Communications Corporation.
  21.  * Portions created by the Initial Developer are Copyright (C) 1994-2000
  22.  * the Initial Developer. All Rights Reserved.
  23.  *
  24.  * Contributor(s):
  25.  *
  26.  * Alternatively, the contents of this file may be used under the terms of
  27.  * either the GNU General Public License Version 2 or later (the "GPL"), or
  28.  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
  29.  * in which case the provisions of the GPL or the LGPL are applicable instead
  30.  * of those above. If you wish to allow use of your version of this file only
  31.  * under the terms of either the GPL or the LGPL, and not to allow others to
  32.  * use your version of this file under the terms of the MPL, indicate your
  33.  * decision by deleting the provisions above and replace them with the notice
  34.  * and other provisions required by the GPL or the LGPL. If you do not delete
  35.  * the provisions above, a recipient may use your version of this file under
  36.  * the terms of any one of the MPL, the GPL or the LGPL.
  37.  *
  38.  * ***** END LICENSE BLOCK ***** */
  39. /* $Id: sslerr.h,v 1.4 2005/03/09 05:20:44 nelsonb%netscape.com Exp $ */
  40. #ifndef __SSL_ERR_H_
  41. #define __SSL_ERR_H_
  42.  
  43.  
  44. #define SSL_ERROR_BASE                (-0x3000)
  45. #define SSL_ERROR_LIMIT                (SSL_ERROR_BASE + 1000)
  46.  
  47. #define IS_SSL_ERROR(code) \
  48.     (((code) >= SSL_ERROR_BASE) && ((code) < SSL_ERROR_LIMIT))
  49.  
  50. #ifndef NO_SECURITY_ERROR_ENUM
  51. typedef enum {
  52. SSL_ERROR_EXPORT_ONLY_SERVER         = (SSL_ERROR_BASE +  0),
  53. SSL_ERROR_US_ONLY_SERVER         = (SSL_ERROR_BASE +  1),
  54. SSL_ERROR_NO_CYPHER_OVERLAP         = (SSL_ERROR_BASE +  2),
  55. /* 
  56.  * Received an alert reporting what we did wrong.  (more alerts below)
  57.  */
  58. SSL_ERROR_NO_CERTIFICATE /*_ALERT */    = (SSL_ERROR_BASE +  3),
  59. SSL_ERROR_BAD_CERTIFICATE                = (SSL_ERROR_BASE +  4),
  60.                     /* error 5 is obsolete */
  61. SSL_ERROR_BAD_CLIENT             = (SSL_ERROR_BASE +  6),
  62. SSL_ERROR_BAD_SERVER             = (SSL_ERROR_BASE +  7),
  63. SSL_ERROR_UNSUPPORTED_CERTIFICATE_TYPE    = (SSL_ERROR_BASE +  8),
  64. SSL_ERROR_UNSUPPORTED_VERSION         = (SSL_ERROR_BASE +  9),
  65.                     /* error 10 is obsolete */
  66. SSL_ERROR_WRONG_CERTIFICATE        = (SSL_ERROR_BASE + 11),
  67. SSL_ERROR_BAD_CERT_DOMAIN         = (SSL_ERROR_BASE + 12),
  68. SSL_ERROR_POST_WARNING             = (SSL_ERROR_BASE + 13),
  69. SSL_ERROR_SSL2_DISABLED         = (SSL_ERROR_BASE + 14),
  70. SSL_ERROR_BAD_MAC_READ             = (SSL_ERROR_BASE + 15),
  71. /* 
  72.  * Received an alert reporting what we did wrong.
  73.  * (two more alerts above, and many more below)
  74.  */
  75. SSL_ERROR_BAD_MAC_ALERT         = (SSL_ERROR_BASE + 16),
  76. SSL_ERROR_BAD_CERT_ALERT                = (SSL_ERROR_BASE + 17),
  77. SSL_ERROR_REVOKED_CERT_ALERT         = (SSL_ERROR_BASE + 18),
  78. SSL_ERROR_EXPIRED_CERT_ALERT         = (SSL_ERROR_BASE + 19),
  79.  
  80. SSL_ERROR_SSL_DISABLED             = (SSL_ERROR_BASE + 20),
  81. SSL_ERROR_FORTEZZA_PQG             = (SSL_ERROR_BASE + 21),
  82. SSL_ERROR_UNKNOWN_CIPHER_SUITE        = (SSL_ERROR_BASE + 22),
  83. SSL_ERROR_NO_CIPHERS_SUPPORTED        = (SSL_ERROR_BASE + 23),
  84. SSL_ERROR_BAD_BLOCK_PADDING        = (SSL_ERROR_BASE + 24),
  85. SSL_ERROR_RX_RECORD_TOO_LONG        = (SSL_ERROR_BASE + 25),
  86. SSL_ERROR_TX_RECORD_TOO_LONG        = (SSL_ERROR_BASE + 26),
  87. /* 
  88.  * Received a malformed (too long or short) SSL handshake.
  89.  */
  90. SSL_ERROR_RX_MALFORMED_HELLO_REQUEST    = (SSL_ERROR_BASE + 27),
  91. SSL_ERROR_RX_MALFORMED_CLIENT_HELLO    = (SSL_ERROR_BASE + 28),
  92. SSL_ERROR_RX_MALFORMED_SERVER_HELLO    = (SSL_ERROR_BASE + 29),
  93. SSL_ERROR_RX_MALFORMED_CERTIFICATE    = (SSL_ERROR_BASE + 30),
  94. SSL_ERROR_RX_MALFORMED_SERVER_KEY_EXCH    = (SSL_ERROR_BASE + 31),
  95. SSL_ERROR_RX_MALFORMED_CERT_REQUEST    = (SSL_ERROR_BASE + 32),
  96. SSL_ERROR_RX_MALFORMED_HELLO_DONE    = (SSL_ERROR_BASE + 33),
  97. SSL_ERROR_RX_MALFORMED_CERT_VERIFY    = (SSL_ERROR_BASE + 34),
  98. SSL_ERROR_RX_MALFORMED_CLIENT_KEY_EXCH    = (SSL_ERROR_BASE + 35),
  99. SSL_ERROR_RX_MALFORMED_FINISHED     = (SSL_ERROR_BASE + 36),
  100. /* 
  101.  * Received a malformed (too long or short) SSL record.
  102.  */
  103. SSL_ERROR_RX_MALFORMED_CHANGE_CIPHER     = (SSL_ERROR_BASE + 37),
  104. SSL_ERROR_RX_MALFORMED_ALERT         = (SSL_ERROR_BASE + 38),
  105. SSL_ERROR_RX_MALFORMED_HANDSHAKE     = (SSL_ERROR_BASE + 39),
  106. SSL_ERROR_RX_MALFORMED_APPLICATION_DATA    = (SSL_ERROR_BASE + 40),
  107. /*
  108.  * Received an SSL handshake that was inappropriate for the state we're in.
  109.  * E.g. Server received message from server, or wrong state in state machine.
  110.  */
  111. SSL_ERROR_RX_UNEXPECTED_HELLO_REQUEST    = (SSL_ERROR_BASE + 41),
  112. SSL_ERROR_RX_UNEXPECTED_CLIENT_HELLO    = (SSL_ERROR_BASE + 42),
  113. SSL_ERROR_RX_UNEXPECTED_SERVER_HELLO    = (SSL_ERROR_BASE + 43),
  114. SSL_ERROR_RX_UNEXPECTED_CERTIFICATE    = (SSL_ERROR_BASE + 44),
  115. SSL_ERROR_RX_UNEXPECTED_SERVER_KEY_EXCH    = (SSL_ERROR_BASE + 45),
  116. SSL_ERROR_RX_UNEXPECTED_CERT_REQUEST    = (SSL_ERROR_BASE + 46),
  117. SSL_ERROR_RX_UNEXPECTED_HELLO_DONE    = (SSL_ERROR_BASE + 47),
  118. SSL_ERROR_RX_UNEXPECTED_CERT_VERIFY    = (SSL_ERROR_BASE + 48),
  119. SSL_ERROR_RX_UNEXPECTED_CLIENT_KEY_EXCH    = (SSL_ERROR_BASE + 49),
  120. SSL_ERROR_RX_UNEXPECTED_FINISHED     = (SSL_ERROR_BASE + 50),
  121. /*
  122.  * Received an SSL record that was inappropriate for the state we're in.
  123.  */
  124. SSL_ERROR_RX_UNEXPECTED_CHANGE_CIPHER     = (SSL_ERROR_BASE + 51),
  125. SSL_ERROR_RX_UNEXPECTED_ALERT         = (SSL_ERROR_BASE + 52),
  126. SSL_ERROR_RX_UNEXPECTED_HANDSHAKE     = (SSL_ERROR_BASE + 53),
  127. SSL_ERROR_RX_UNEXPECTED_APPLICATION_DATA= (SSL_ERROR_BASE + 54),
  128. /*
  129.  * Received record/message with unknown discriminant.
  130.  */
  131. SSL_ERROR_RX_UNKNOWN_RECORD_TYPE    = (SSL_ERROR_BASE + 55),
  132. SSL_ERROR_RX_UNKNOWN_HANDSHAKE         = (SSL_ERROR_BASE + 56),
  133. SSL_ERROR_RX_UNKNOWN_ALERT         = (SSL_ERROR_BASE + 57),
  134. /* 
  135.  * Received an alert reporting what we did wrong.  (more alerts above)
  136.  */
  137. SSL_ERROR_CLOSE_NOTIFY_ALERT         = (SSL_ERROR_BASE + 58),
  138. SSL_ERROR_HANDSHAKE_UNEXPECTED_ALERT     = (SSL_ERROR_BASE + 59),
  139. SSL_ERROR_DECOMPRESSION_FAILURE_ALERT     = (SSL_ERROR_BASE + 60),
  140. SSL_ERROR_HANDSHAKE_FAILURE_ALERT     = (SSL_ERROR_BASE + 61),
  141. SSL_ERROR_ILLEGAL_PARAMETER_ALERT     = (SSL_ERROR_BASE + 62),
  142. SSL_ERROR_UNSUPPORTED_CERT_ALERT     = (SSL_ERROR_BASE + 63),
  143. SSL_ERROR_CERTIFICATE_UNKNOWN_ALERT     = (SSL_ERROR_BASE + 64),
  144.  
  145. SSL_ERROR_GENERATE_RANDOM_FAILURE    = (SSL_ERROR_BASE + 65),
  146. SSL_ERROR_SIGN_HASHES_FAILURE        = (SSL_ERROR_BASE + 66),
  147. SSL_ERROR_EXTRACT_PUBLIC_KEY_FAILURE    = (SSL_ERROR_BASE + 67),
  148. SSL_ERROR_SERVER_KEY_EXCHANGE_FAILURE    = (SSL_ERROR_BASE + 68),
  149. SSL_ERROR_CLIENT_KEY_EXCHANGE_FAILURE    = (SSL_ERROR_BASE + 69),
  150.  
  151. SSL_ERROR_ENCRYPTION_FAILURE        = (SSL_ERROR_BASE + 70),
  152. SSL_ERROR_DECRYPTION_FAILURE        = (SSL_ERROR_BASE + 71),
  153. SSL_ERROR_SOCKET_WRITE_FAILURE        = (SSL_ERROR_BASE + 72),
  154.  
  155. SSL_ERROR_MD5_DIGEST_FAILURE        = (SSL_ERROR_BASE + 73),
  156. SSL_ERROR_SHA_DIGEST_FAILURE        = (SSL_ERROR_BASE + 74),
  157. SSL_ERROR_MAC_COMPUTATION_FAILURE    = (SSL_ERROR_BASE + 75),
  158. SSL_ERROR_SYM_KEY_CONTEXT_FAILURE    = (SSL_ERROR_BASE + 76),
  159. SSL_ERROR_SYM_KEY_UNWRAP_FAILURE    = (SSL_ERROR_BASE + 77),
  160. SSL_ERROR_PUB_KEY_SIZE_LIMIT_EXCEEDED    = (SSL_ERROR_BASE + 78),
  161. SSL_ERROR_IV_PARAM_FAILURE        = (SSL_ERROR_BASE + 79),
  162. SSL_ERROR_INIT_CIPHER_SUITE_FAILURE    = (SSL_ERROR_BASE + 80),
  163. SSL_ERROR_SESSION_KEY_GEN_FAILURE    = (SSL_ERROR_BASE + 81),
  164. SSL_ERROR_NO_SERVER_KEY_FOR_ALG        = (SSL_ERROR_BASE + 82),
  165. SSL_ERROR_TOKEN_INSERTION_REMOVAL    = (SSL_ERROR_BASE + 83),
  166. SSL_ERROR_TOKEN_SLOT_NOT_FOUND        = (SSL_ERROR_BASE + 84),
  167. SSL_ERROR_NO_COMPRESSION_OVERLAP    = (SSL_ERROR_BASE + 85),
  168. SSL_ERROR_HANDSHAKE_NOT_COMPLETED    = (SSL_ERROR_BASE + 86),
  169. SSL_ERROR_BAD_HANDSHAKE_HASH_VALUE    = (SSL_ERROR_BASE + 87),
  170. SSL_ERROR_CERT_KEA_MISMATCH        = (SSL_ERROR_BASE + 88),
  171. SSL_ERROR_NO_TRUSTED_SSL_CLIENT_CA    = (SSL_ERROR_BASE + 89),
  172. SSL_ERROR_SESSION_NOT_FOUND        = (SSL_ERROR_BASE + 90),
  173.  
  174. SSL_ERROR_DECRYPTION_FAILED_ALERT    = (SSL_ERROR_BASE + 91),
  175. SSL_ERROR_RECORD_OVERFLOW_ALERT        = (SSL_ERROR_BASE + 92),
  176. SSL_ERROR_UNKNOWN_CA_ALERT        = (SSL_ERROR_BASE + 93),
  177. SSL_ERROR_ACCESS_DENIED_ALERT        = (SSL_ERROR_BASE + 94),
  178. SSL_ERROR_DECODE_ERROR_ALERT        = (SSL_ERROR_BASE + 95),
  179. SSL_ERROR_DECRYPT_ERROR_ALERT        = (SSL_ERROR_BASE + 96),
  180. SSL_ERROR_EXPORT_RESTRICTION_ALERT    = (SSL_ERROR_BASE + 97),
  181. SSL_ERROR_PROTOCOL_VERSION_ALERT    = (SSL_ERROR_BASE + 98),
  182. SSL_ERROR_INSUFFICIENT_SECURITY_ALERT    = (SSL_ERROR_BASE + 99),
  183. SSL_ERROR_INTERNAL_ERROR_ALERT        = (SSL_ERROR_BASE + 100),
  184. SSL_ERROR_USER_CANCELED_ALERT        = (SSL_ERROR_BASE + 101),
  185. SSL_ERROR_NO_RENEGOTIATION_ALERT    = (SSL_ERROR_BASE + 102),
  186.  
  187. SSL_ERROR_SERVER_CACHE_NOT_CONFIGURED    = (SSL_ERROR_BASE + 103),
  188.  
  189. SSL_ERROR_END_OF_LIST    /* let the c compiler determine the value of this. */
  190. } SSLErrorCodes;
  191. #endif /* NO_SECURITY_ERROR_ENUM */
  192.  
  193. #endif /* __SSL_ERR_H_ */
  194.